package com.zby.model.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.autotable.annotation.AutoColumn;
import org.dromara.autotable.annotation.AutoTable;

import java.time.LocalDateTime;

/**
 * todo 这个类的String类型属性@AutoColumn注解的length需要修改
 * @author wuyanzhu
 * @TableName user_info
 */
@EqualsAndHashCode(callSuper = true)
@Data
@AutoTable(comment = "用户详情")
@Schema(description = "用户详情")
public class UserInfo extends BasePojo {
    /**
     * 用户id
     */
    @Schema(description = "用户id")
    @AutoColumn(comment = "用户名")
    private Integer userId;

    /**
     * 年纪
     */
    @Schema(description = "出生时间")
    @AutoColumn(comment = "出生时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime date;

    /**
     * 性别
     */
    @Schema(description = "性别")
    @AutoColumn(comment = "性别")
    private Integer sex;

    /**
     * 所在地
     */
    @Schema(description = "所在地")
    @AutoColumn(length = 255, comment = "所在地")
    private String location;

    /**
     * 介绍
     */
    @Schema(description = "介绍")
    @AutoColumn(length = 255, comment = "介绍")
    private String introduce;

    /**
     * 手机号
     */
    @Schema(description = "手机号")
    @AutoColumn(length = 11, comment = "手机号")
    private String phone;

    /**
     * 社交媒体
     */
    @Schema(description = "社交媒体")
    @AutoColumn(length = 255, comment = "社交媒体")
    private String socialMedia;

    /**
     * 作品数
     */
    @Schema(description = "作品数")
    @AutoColumn(comment = "作品数")
    private Integer articleCount;

    /**
     * 粉丝数
     */
    @Schema(description = "粉丝数")
    @AutoColumn(comment = "粉丝数")
    private Integer fansCount;
}